package com.example.email;

import javax.mail.*;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import java.util.Properties;

public class TestSend {

    public static void main(String[] args) {


        try {
            //1.设置邮件的一些信息
            Properties props = new Properties();
            //发送邮件的服务器地址
            props.put("mail.smtp.host", "smtp.exmail.qq.com");//  stmp.qq.com   smtp.sina.com
            //设置发送邮件使用的传输协议
            props.setProperty("mail.transport.protocol", "smtp");
            //并且要设置使用验证：
            props.setProperty("mail.smtp.auth", "true");
            //使用 STARTTLS安全连接:
            props.setProperty("mail.smtp.starttls.enable","true");
            // 开启debug模式，能够在控制台看到发送邮件的过程
            props.setProperty("mail.debug", "true");

            //2.创建Session对象
            Session session =Session.getInstance(props);

            //3.创建出MimeMessage，邮件的消息对象
            MimeMessage message = new MimeMessage(session);

            //4.设置发件人
            Address fromAddr = new InternetAddress("liguanfu@daiyou-inc.com");
            message.setFrom(fromAddr);

            //5.设置收件人
            Address toAddr = new InternetAddress("tianyidalang2@163.com");
            message.setRecipient(Message.RecipientType.TO, toAddr);

            //6.设置邮件的主题
            message.setSubject("JavaEmail测试");

            //7.设置邮件的正文
            message.setText("邮件测试，你收到了吗");


            //8.得到传输对象
            Transport transport = session.getTransport();
            //连接SMTP服务器
            //第一个参数是你用来发送邮件的邮箱的SMTP服务器地址，第二个是你的邮箱地址，第三个是授权码
            transport.connect("smtp.exmail.qq.com", "liguanfu@daiyou-inc.com", "Xiaoshu@123");
            //设置需要发送的信息以及收件人地址，第二个参数是个Address数组：Address[]
            transport.sendMessage(message, message.getAllRecipients());

            transport.close();
            System.out.println("关闭");
        } catch (MessagingException e) {
            e.printStackTrace();
        }


    }
}
